From d47d0366631013ae2c7cbefc71e0976290d7be20 Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Wed, 9 Sep 2020 22:26:27 -0400 Subject: [PATCH] search entry: Don't propagate handled events When the text says it has handled the event, trust it. We don't want to emit ::search-started if the content hasn't changed, but we still should not propagate e.g. an Insert key press if it has already toggled overwrite mode in the text. Fixes: #2874 --- gtk/gtksearchentry.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gtk/gtksearchentry.c b/gtk/gtksearchentry.c index ece8cc0c28..80304901b6 100644 --- a/gtk/gtksearchentry.c +++ b/gtk/gtksearchentry.c @@ -593,9 +593,9 @@ capture_widget_key_handled (GtkEventControllerKey *controller, handled = gtk_event_controller_key_forward (controller, entry->entry); - if (handled && entry->content_changed && !entry->search_stopped) + if (handled) { - if (was_empty) + if (was_empty && entry->content_changed && !entry->search_stopped) g_signal_emit (entry, signals[SEARCH_STARTED], 0); return GDK_EVENT_STOP; -- 2.30.2